課程資訊
課程名稱
程式設計
Programming 
開課學期
110-2 
授課對象
社會科學院  經濟學系  
授課教師
魏聖倫 
課號
ECON1024 
課程識別碼
303 17000 
班次
 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期三2,3,4(9:10~12:10) 
上課地點
社科201 
備註
經濟系大一學生優先選課。
限學士班一年級 且 限本系所學生(含輔系、雙修生)
總人數上限:100人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

This course is an introductory programming course designed for students majoring in economics. The programming language used in this course is Python. Python is a simple, easy to learn, and powerful programming language suitable as the first programming language for beginners. Python applications are in various fields, such as data analysis, machine learning, website development, etc.

This course has three essential components: basic programming concepts, web scraping techniques, and hands-on practices with a final project. At the beginning of the semester, we will introduce how programming works. Then, We will use several well-known websites as examples to show how to implement a web scrapping program. After that, students should try to solve real-world problems with programs.
This course is designed for students without programming experience. We will teach programming from scratch. Make sure to spend at least 10 hours a week on this course if you are a novice programmer. Students need to watch the pre-recorded course videos and practice exercises through the online judge system due to this is a flipped classroom course. TAs will help students to clarify concepts and debugging in the class. Furthermore, there are additional TA hours twice a week. 

課程目標
Course Objective:
The goal of the course is to enable students to understand entry-level programming concepts through learning by doing.

Except students have the following abilities after taking this course:
1. Have entry-level programming ability, able to complete repetitive tasks in daily life with programs.
2. Have web scraping ability, able to crawl website information via programs.
3. Have interpretation and self-study skills for online learning resources, making this course the first step in program learning.


Course outline (Course Schedule of 18 weeks)
Week 1: Introduction
Week 2: Data type, I/O, Escape character, If statement, Object, String (HW1 announce)
Week 3: List, Loop (HW2 announce)
Week 4: Nested Loop, break, continue (HW1 due)
Week 5: Exam 1 (HW2 due)
Week 6: Function (HW3 announce)
Week 7: Recursion, Sort, Exception Handling (HW3 due, HW4 announce)
Week 8: Dictionary, File Handling, Module
Week 9: Class, Web Scraping Introduction, Web Scraping through HTTP GET method (HW4 due, HW5 announce)
Week 10: Exam 2
Week 11: Web Scraping through API and HTTP POST method (HW5 due, HW6 announce)
Week 12: Advance Issues in Web Scraping, including download files and handling JavaScript based website (Final Project Proposal due)
Week 13: Final Project Discussion (HW6 due)
Week 14: Final Project Discussion
Week 15: Exam 3
Week 16: Final Project Discussion
Week 17: Final Project Demo 
課程要求
Grading:
1. Homework (48%)
There are six programming assignments this semester (8 points for each). Students need to submit homework through the online judge system. Plagiarism is not allowed. Otherwise, 0 points for the assignment and the final grade will be deducted two more ranks (e.g., A => B+, B+ =>B-, C=>F).

2. Exam (27%)
There are three on-site programming exams this semester (9 points for each). Open books, open internet, but cheating and discussion are strictly prohibited. Otherwise, you will get an "F" for this course.

3. Final Project (25%)
There is a final project with 3~4 group members. Students need to submit their project proposal at week 12 and their presentation video and presentation slides at the end of the semester. Plagiarism is not allowed. Otherwise, you will get 0 points for the final project.

Requirements for students after the class:
Homeworks and final project. Details are all in the "Grading" part. 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
 
參考書目
Required readings
1. Course video: Please watch the pre-recorded video on NTU COOL before the class.
2. Python Tutorial: Please read the "Python 初學系列" on medium (https://medium.com/ccclub) before the class. 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
Homework 
48% 
There are six programming assignments this semester (8 points for each). Students need to submit homework through the online judge system. Plagiarism is not allowed. Otherwise, 0 points for the assignment and the final grade will be deducted two more ranks (e.g., A => B+, B+ =>B-, C=>F). 
2. 
Exam 
27% 
There are three on-site programming exams this semester (9 points for each). Open books, open internet, but cheating and discussion are strictly prohibited. Otherwise, you will get an "F" for this course. 
3. 
Final Project 
25% 
There is a final project with 3~4 group members. Students need to submit their project proposal at week 12 and their presentation video and presentation slides at the end of the semester. Plagiarism is not allowed. Otherwise, you will get 0 points for the final project. 
 
課程進度
週次
日期
單元主題
無資料